From 48a2255bfc45ffcfb0b39ffefdd57cbacf8b36df Mon Sep 17 00:00:00 2001 From: dujinkim Date: Fri, 18 Jul 2025 07:52:02 +0000 Subject: (대표님) 파일관리변경, 클라IP추적, 실시간알림, 미들웨어변경, 알림API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/notifications/[id]/deleate/route.ts | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 app/api/notifications/[id]/deleate/route.ts (limited to 'app/api/notifications/[id]/deleate') diff --git a/app/api/notifications/[id]/deleate/route.ts b/app/api/notifications/[id]/deleate/route.ts new file mode 100644 index 00000000..21123c78 --- /dev/null +++ b/app/api/notifications/[id]/deleate/route.ts @@ -0,0 +1,34 @@ +// app/api/notifications/[id]/delete/route.ts +import { NextRequest, NextResponse } from 'next/server'; +import { getServerSession } from 'next-auth'; +import { authOptions } from "@/app/api/auth/[...nextauth]/route" +import { deleteNotification } from '@/lib/notification/service'; + +export async function DELETE( + request: NextRequest, + { params }: { params: { id: string } } +) { + try { + const session = await getServerSession(authOptions); + if (!session?.user?.id) { + return NextResponse.json({ error: 'Unauthorized' }, { status: 401 }); + } + + const deletedNotification = await deleteNotification(params.id, session.user.id); + + if (!deletedNotification) { + return NextResponse.json( + { error: 'Notification not found' }, + { status: 404 } + ); + } + + return NextResponse.json({ success: true }); + } catch (error) { + console.error('Error deleting notification:', error); + return NextResponse.json( + { error: 'Failed to delete notification' }, + { status: 500 } + ); + } +} \ No newline at end of file -- cgit v1.2.3